let server = require("express")();
let mysql = require("mysql");
let ejs = require("ejs");
const port = 81;


//解决跨域
server.all("*", function(req, res, next) {
        //设置允许跨域的域名，*代表允许任意域名跨域
        res.header("Access-Control-Allow-Origin", "*");
        //允许的header类型
        res.header("Access-Control-Allow-Headers", "content-type");
        //跨域允许的请求方式 
        res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS");
        if (req.method.toLowerCase() == 'options')
            res.send(200); //让options尝试请求快速结束
        else
            next();
    })
    // 规划链接
let sql = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '123456',
    database: 'chuanyue',
    port: 3306
});

// 尝试链接
sql.connect();

server.get(`/register`, function(request, response) {
    let username = request.query.username;
    let password = request.query.password;

    sql.query(`select * from user where username="${username}"`, function(error, data) {
        if (error) {
            console.log(error)
            response.end("error")
            return
        }
        if (data.length === 0) {
            sql.query(`insert into user (username,password) values ("${username}","${password}")`, (error, result) => {
                if (error) {
                    console.log(error);
                    response.end("error");
                    return
                }
                response.end("success")
            })
        } else {
            response.end("exist")
        }
    })
})

server.get("/login", (request, response) => {
    let username = request.query.username;
    let password = request.query.password;

    sql.query(`SELECT * FROM user WHERE username="${username}"`, (error, data) => {
        if (data.length === 0) {
            response.end("error")
            return;
        }

        if (data[0].password === password) {
            response.end("success")
        } else {
            response.end("error")
        }
    })
})

server.get("/anlibiao", function(request, response) {
    sql.query("select * from anliliebiao", function(error, data) {
        if (error) {
            console.log(error);
            response.end("error");
            return;
        }
        response.end(JSON.stringify(data));
    })
})
server.get("/anlibiao1", function(request, response) {
    let id = request.query.id;
    sql.query(`select * from anliliebiao where id=${id}`, function(error, data) {
        if (error) {
            console.log(error);
            response.end("error");
            return;
        }

        ejs.renderFile("anli-xiangqing.html", { neirong: data[0] }, function(error, result) {
            if (error) {
                console.log(error)
                return;
            }
            response.end(result)
        });
    })
})
server.get("/jiejuefanganbiao", function(request, response) {
    sql.query("select * from jiejuefangan", function(error, data) {
        if (error) {
            console.log(error);
            response.end("error");
            return;
        }
        response.end(JSON.stringify(data));
    })
})

server.get("/jiejuefanganbiao1", function(request, response) {
    let id = request.query.id;
    sql.query(`select * from jiejuefangan where id=${id}`, function(error, data) {
        if (error) {
            console.log(error);
            response.end("error");
            return;
        }
        ejs.renderFile("jiejuefangan-xiangqingye.html", { xiangqing: data[0] }, function(error, result) {
            if (error) {
                console.log(error)
                return;
            }
            response.end(result)
        });
        // response.end(JSON.stringify(data));
    })
})


server.listen(port);
console.log("server is running at " + port);